CPN/Tools: A Tool for Editing and Simulating Coloured Petri Nets ETAPS Tool Demonstration Related to TACAS

نویسندگان

  • Michel Beaudouin-Lafon
  • Wendy E. Mackay
  • Mads Jensen
  • Peter Andersen
  • Paul Janecek
  • Henry Michael Lassen
  • Kasper Lund
  • Kjeld Høyer Mortensen
  • Stephanie Munck
  • Anne V. Ratzer
  • Katrine Ravn
  • Søren Christensen
  • Kurt Jensen
چکیده

CPN/Tools is a major redesign of the popular Design/CPN tool for editing, simulation and state space analysis of Coloured Petri Nets. The new interface is based on advanced interaction techniques, including bi-manual interaction, toolglasses and marking menus and a new metaphor for managing the workspace. It challenges traditional ideas about user interfaces, getting rid of pull-down menus, scrollbars, and even selection, while providing the same or greater functionality. CPN/Tools requires an OpenGL graphics accelerator and will run on all major platforms (Windows, Unix/Linux, MacOS). 1 The CPN/Tools Interface Interaction techniques for desktop workstations have changed little since the creation of the Xerox Star in the early eighties. The vast majority of today’s interfaces are still based on a single mouse and keyboard to manipulate windows, icons, menus, dialog boxes, and to drag and drop objects on the screen. While these interfaces are now ubiquitous they are also reaching their limits: as new applications become more powerful, the corresponding interfaces become too complex. CPN/Tools [1] addresses this trade-off between power and ease-of-use by combining new interaction techniques into a consistent and simple interface for editing and simulating Coloured Petri Nets [2, 3]. Coloured Petri Nets frequently contain a large number of pages, which are similar to modules in programming languages. In CPN/Tools we have designed a window manager that makes it easy to manage these modules. The workspace occupies the whole screen and contains window-like objects called binders. Binders contain pages, each equivalent to a window in a traditional environment. Each page has a tab similar to those found in tabbed dialogs. Clicking the tab brings that page to the front of the binder. A page can be dragged to a different binder or to the background to create a new binder for it. Binders reduce the number of windows on the screen and the time spent organizing them. Binders also help users organize their work by grouping related pages together and reducing the time spent looking for hidden windows. CPN/Tools supports multiple views, allowing several binders to contain a representation of the same page. For example one binder can contain a view on a page including simulation information while another binder can contain a view on the same page without simulation information and at a smaller scale (Fig.1). The CPN/Tools interface requires a keyboard and two pointing devices. For a right-handed user we use a mouse for the right hand and a trackball for the left hand. The mouse is used for tasks that may require precision, while the trackball is used for tasks that do not require much precision e.g. moving tools. For simplicity we assume a right-handed user in our description of interaction techniques. The interface has no menu bars, no pull-down menus, no scrollbars and no dialog boxes. Instead, it uses a unique combination of traditional, recent and novel interaction techniques: Direct manipulation (i.e. clicking or dragging objects) is used for frequent operations such as moving objects, panning the content of a view and editing text. When a tool is held in the right hand, e.g. after having selected it in a floating palette, direct manupulation actions are still available via a long click, i.e. pressing the mouse button, waiting for a short delay until the cursor changes, and then either dragging or releasing the mouse button. Bi-manual manipulation is a variant of direct manipulation that involves using both hands for a single task. It is used to resize objects (binders, places, transitions, etc.) and to zoom the view of a page. The interaction is similar to holding an object with two hands and stretching or shrinking it. Unlike traditional window management techniques, using two hands makes it possible to simultaneously resize and move a binder, or pan and zoom the view of a page. Marking Menus[5] are radial, contextual menus that appear when clicking the right button of the mouse. Marking menus offer faster selection than traditional linear menus for two reasons. First, it is easier for the human hand to move the cursor in a given direction than to reach for a target at a given distance. Second, the menu does not appear when the selection gesture is executed quickly, which supports a smooth transition between novice and expert use. Kurtenbach and Buxton [5] have shown that selection times can be more than three times faster than with traditional menus. Keyboard input is used only to edit text. Some navigation commands are available at the keyboard to make it easier to edit several inscriptions in sequence without having to move the hands to the pointing devices. Keyboard modifiers and shortcuts are not necessary since most of the interaction is carried out with the two hands on the pointing devices. Floating palettes contain tools represented by buttons. Clicking a tool with the mouse activates this tool, i.e. the user conceptually holds the tool in the hand. Clicking on an object with the tool in hand applies the tool to that object. Floating palettes are moved with the left hand, making it easy to bring the tools close to the objects being manipulated, and saving the time spent moving the Fig. 1. The CPN/Tools interface. The left column is called the index. The top-left and top-right binders contain different views of the same page. The views are scaled differently and the view in the top-left binder contains simulation information. The bottom binder contains six pages represented by tabs: The page in front shows several magnetic guidelines (dashed lines). In the top right binder a circular marking menu has been popped up on a page. The palette with the VCR-like controls is a floating palette, while a toolglass is positioned over the page in the bottom binder. This toolglass can be used to edit colours, linetypes and linethicknesses. cursor to a traditional menubar or toolbar. Floating palettes can be dropped in the workspace and become a standard toolpalette. In many current interfaces, after a tool is used (especially a creation tool), the system automatically activates a “select” tool. This supports a frequent pattern of use in which the user wants to move an object immediately after it has been created but causes problems when the user wants to create additional objects of the same type. CPN/Tools avoids this automatic changing of the current tool by ensuring that the user can always move an object, even when a tool is active, with a long click of the mouse. This mimics the situation in which one continues holding a physical pen while moving an object out of the way in order to write. Toolglasses[4] like floating palettes, contain a set of tools represented by buttons, and are moved with the left hand, but unlike floating palettes, they are semi-transparent. A tool is applied to an object with a click-through action: The tool is positioned over the object of interest and the user clicks through the tool onto the object. The toolglass disappears when the tool requires a drag interaction, e.g. when creating an arc. This prevents the toolglass from getting in the way and makes it easier to pan the document with the left hand when the target position is not visible. This is a case where the two hands operate simultaneously but independently. Magnetic guidelines are used to align objects and keep them aligned. Moving an object near a guidelinet causes the object to snap to it. Objects can be removed from a guideline by dragging them away from it. Moving a guideline moves all the objects attached to it, maintaining their alignment. Preliminary results from our user studies make it clear that none of the above techniques is always better or worse. Rather, each emphasizes a different, but common pattern of use. Marking menus work well when applying multiple commands to a single object. Floating palettes work well when applying the same command to different objects. Toolglasses work well when the work is driven by the structure of the diagram, such as working around a cycle in a Petri net.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

CPN Tools 4: Multi-formalism and Extensibility

CPN Tools is an advanced tool for editing, simulating, and analyzing colored Petri nets. This paper discusses the fourth major release of the tool, which makes it simple to use the tool for ordinary Petri nets, including adding inhibitor and reset arcs, and PNML export. This version also supports declarative modeling using constraints, and adds an extension framework making it easy for third pa...

متن کامل

CPN Tools for Editing, Simulating, and Analysing Coloured Petri Nets – Version 1.0 and Beyond

CPN Tools is a tool for editing, simulating and analysing Coloured Petri Nets. The GUI is based on advanced interaction techniques, such as toolglasses, marking menus, and bi-manual interaction. The tool features incremental syntax checking and code generation which take place while a net is being constructed. Version 1.0 of CPN Tools was released in November 2003. The version is stable, well-t...

متن کامل

CPN Tools for Editing, Simulating, and Analysing Coloured Petri Nets

CPN Tools is a tool for editing, simulating and analysing Coloured Petri Nets. The GUI is based on advanced interaction techniques, such as toolglasses, marking menus, and bi-manual interaction. Feedback facilities provide contextual error messages and indicate dependency relationships between net elements. The tool features incremental syntax checking and code generation which take place while...

متن کامل

CPN/Tools: A Post-WIMP Interface for Editing and Simulating Coloured Petri Nets

CPN/Tools is a major redesign of the popular Design/CPN tool from the University of Aarhus CPN group. The new interface is based on advanced, post-WIMP interaction techniques, including bi-manual interaction, toolglasses and marking menus and a new metaphor for managing the workspace. It challenges traditional ideas about user interfaces, getting rid of pull-down menus, scrollbars, and even sel...

متن کامل

Textual Interchange Format for High-level Petri Nets

In this paper a text format for High-level Petri Net (HLPN) diagrams is presented. The text format is designed to serve as a platform-independent le format for the Design/CPN tool. It is consistent with the forthcoming standard for High-level Petri Nets. The text format may also be seen as our contribution to the development of an open, tool-independent interchange format for High-level Petri n...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2001